Ortac: Runtime Assertion Checking for OCaml (Tool Paper)

نویسندگان

چکیده

Runtime assertion checking (RAC) is a convenient set of techniques that lets developers abstract away the process verifying correctness their programs by writing formal specifications and automating verification at runtime.In this work, we present ortac, runtime tool for OCaml libraries programs. functional programming language in which idioms rely on an expressive type system, modules, interface abstractions. ortac consumes interfaces annotated with invariants function contracts produces code wrappers same signature check these runtime. It provides flexible framework traditional checking, monitoring misbehaviors without interruptions, automated fuzz testing programs.This paper presents overview features highlights its main design choices.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Runtime Assertion Checking Using JML

public class IntMathOps3 { //@ requires y >= 0; public static int isqrt(int y) { return (int) Math.sqrt(y); } } Figure 1: A simple specification requiring the parameter to be non-negative

متن کامل

Efficient Runtime Assertion Checking of Assignable Clauses with Datagroups

Runtime assertion checking is useful for debugging programs and specifications. Existing tools check invariants as well as method preand postconditions, but mostly ignore assignable (or modifies) clauses, which specify the heap locations a method is allowed to assign to. A way to abstract from implementation details is to specify assignable clauses using datagroups, which represent sets of conc...

متن کامل

A Lesson on Runtime Assertion Checking with Frama-C

Runtime assertion checking provides a powerful, highly automatizable technique to detect violations of specified program properties. This paper provides a lesson on runtime assertion checking with Frama-C, a publicly available toolset for analysis of C programs. We illustrate how a C program can be specified in executable specification language e-acsl and how this specification can be automatic...

متن کامل

Effective and Efficient Runtime Assertion Checking for JML Through Strong Validity

Previously, we presented an assertion semantics for JML based on “strong validity” in which an assertion is taken to be valid precisely when it is defined and true. Elsewhere we have shared our positive experiences with the realization and use of this new semantics in the context of ESC/Java2. In this paper, we describe the challenges faced by and the redesign required for the implementation of...

متن کامل

J-LO A tool for runtime-checking temporal assertions

We present a Runtime Verification framework for Java programs called the Java Logical Observer, J-LO for short. Properties can be specified in Linear-time Temporal Logic (LTL) over AspectJ pointcuts. These properties are checked during program-execution by an automaton-based approach where transitions are triggered through aspects. No Java source code is necessary since AspectJ works on the byt...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Lecture Notes in Computer Science

سال: 2021

ISSN: ['1611-3349', '0302-9743']

DOI: https://doi.org/10.1007/978-3-030-88494-9_13